Lightweight Lemmas in Prolog 1
نویسندگان
چکیده
Prolog is known to be well-suited for expressing and implementing logics and inference systems. We show that lemmas and deenitions in such logics can be implemented with a great economy of expression. We encode a polymorphic higher-order logic using the ML-style polymorphism of Prolog. The terms of the metalanguage (Prolog) can be used to express the statement of a lemma, and metalanguage type-checking can directly type-check the lemma. But to allow polymorphic lem-mas requires either more general polymorphism at the meta-level or a less concise encoding of the object logic. We discuss both the Terzo and Teyjus implementations of Prolog as well as related systems such as Elf.
منابع مشابه
Polymorphic Lemmas and Definitions in lambda-Prolog and Twelf
λProlog is known to be well-suited for expressing and implementing logics and inference systems. We show that lemmas and definitions in such logics can be implemented with a great economy of expression. We encode a higher-order logic using an encoding that maps both terms and types of the object logic (higher-order logic) to terms of the metalanguage (λProlog). We discuss both the Terzo and Tey...
متن کاملProlog Technology for Default Reasoning: Proof Theory and Compilation Techniques
The aim of this work is to show how Prolog technology can he used for efficient implementation of query answering in default logics. The idea is to translate a default theory along with a query into a Prolog program and a Prolog query such that the original query is derivable from the default theory iff the Prolog query is derivable from the Prolog program. In order to comply with the goal-orie...
متن کاملUsing a Declarative Language to Build an Experimental Analysis Tool
In this paper we give a brief summary of our experience in using a declarative language, Prolog, to develop an experimental formal analysis tool, the NRL Protocol Analyzer, which was updated and modiied over the years to incorporate new theories and techniques. We discuss the beneets of using such an approach, and also some of the downsides... . The application of formal methods to cryptographi...
متن کامل5. Conclusion and Future Directions
A new declarative semantics for logic languages. In R. Optimizations of bottom-up evaluation with non-ground terms. In Miller 15], pages 557{574. 19 orthogonal to the type of program to which memoing is applied. With some care, they can be used in the context of full Prolog, speciied as we have suggested by a programmer controlled directive. The practicality of the special case of ground, multi...
متن کاملLightweight Lemmas in λProlog
λProlog is known to be well-suited for expressing and implementing logics and inference systems. We show that lemmas and definitions in such logics can be implemented with a great economy of expression. The terms of the meta-language (λProlog) can be used to express the statement of a lemma, and the type checking of the metalanguage can directly implement the type checking of the lemma. The ML-...
متن کامل